package com.ruoyi.system.service;

import java.util.List;
import java.util.Map;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.system.domain.Achievements;
import com.ruoyi.system.domain.SalaryStandard;
import com.ruoyi.system.domain.TempUserSalaryDto;

/**
 * 人员绩效Service接口
 * 
 * @author ruoyi
 * @date 2022-11-13
 */
public interface IAchievementsService extends IService<Achievements>
{
    /**
     * 查询人员绩效
     * 
     * @param id 人员绩效主键
     * @return 人员绩效
     */
    public Achievements selectAchievementsById(Long id);

    /**
     * 查询人员绩效列表
     * 
     * @param achievements 人员绩效
     * @return 人员绩效集合
     */
    public List<Achievements> selectAchievementsList(Achievements achievements);

    /**
     * 新增人员绩效
     * 
     * @param achievements 人员绩效
     * @return 结果
     */
    public int insertAchievements(Achievements achievements);

    /**
     * 修改人员绩效
     * 
     * @param achievements 人员绩效
     * @return 结果
     */
    public int updateAchievements(Achievements achievements);

    /**
     * 批量删除人员绩效
     * 
     * @param ids 需要删除的人员绩效主键集合
     * @return 结果
     */
    public int deleteAchievementsByIds(String ids);

    /**
     * 删除人员绩效信息
     * 
     * @param id 人员绩效主键
     * @return 结果
     */
    public int deleteAchievementsById(Long id);

    /**
     * 查询绩效相关数据
     * @param map
     * @return
     */
    public List<TempUserSalaryDto> selectAchievementsData(Map<String,Object> map);
    /**
     * 导入人员绩效数据
     *
     * @param list 人员绩效数据列表
     * @param isUpdateSupport 是否更新支持，如果已存在，则进行更新数据
     * @param operName 操作工资标准
     * @return 结果
     */
    public String importAchievements(List<Achievements> list, Boolean isUpdateSupport, String operName);
}
